package com.example.demo.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.example.demo.controller.bean.Result;
import com.example.demo.mapper.entity.*;
import com.example.demo.utils.PageBo;
import com.example.demo.utils.PageVo;

import java.util.List;

public interface BadgeManageService {
    List<BadgeView> getTabsList();

    PageVo<BadgeView> getBadgeList(BadgeView badge);


    PageVo<BadgeView> getGrowthBadgeList(PageBo pageBo);

    PageVo<BadgeView> getAchievementBadgeList(PageBo pageBo);

    PageVo<BadgeView> getSpecialBadgeList(PageBo pageBo);

    PageVo<BadgeView> searchBadgeList(BadgeView request,PageBo pageBo);

    Result<String> addBadge(BadgeView request);

    Result<String> deleteBadge(BadgeView request);

    void batchDeleteBadge(List<Badge> badgeList);

    Result<String> updateBadgeList(BadgeView request);

    Badge getById(int badgeId);

    Badge selectBadgeById(int badgeId);

    void placeBadgePic(Badge currentBadge);

    List<BadgeView> list(LambdaQueryWrapper<BadgeView> queryWrapper);


    PageVo<StudentBadgeView> getBadgeLog(PageBo pageBo);

    PageVo<StudentBadgeView> searchBadgeLog(StudentBadgeView request, PageBo pageBo);

}
